1. Field of the Invention
This invention relates in general to database management systems performed by computers, and in particular to a system using virtual replicated tables in a cluster database management system.
2. Description of Related Art
Databases are computerized information storage and retrieval systems. A Relational Database Management System (RDBMS) is a database management system (DBMS) which uses relational techniques for storing and retrieving data. RDBMS software using a Structured Query Language (SQL) interface is well known in the art. The SQL interface has evolved into a standard language for RDBMS software and has been adopted as such by both the American National Standards Organization (ANSI) and the International Standards Organization (ISO).
A typical relational database management system includes both database files and index files. The database files store data in the rows and columns of tables stored on data pages. A page is a physical unit of transfer between main storage and secondary storage. In such a table, the rows may correspond to individual records while the columns of the table represent attributes of the records. For example, in a customer information table of a database management system, each row might represent a different customer data object while each column represents different attributes of the customers, such as the name of a particular customer, the amount owed by the customer and the cash receipts received from the customer. The actions of a transaction that cause changes to recoverable data objects are recorded in a log.
Replicated tables play an important role in cluster database systems. They are used to improve performance by co-locating data on nodes where they will be frequently accessed. Unfortunately, actually replicating data results in significant extra overhead during insert/update/delete (data modification) operations and it increases administration complexity and cost due to the required extra storage. As a result of those implications replicated tables are not always practical, particularly in On-line Transaction Processing System (OLTP) scenarios. Competitive cluster technologies, such as full shared-cache cluster technology, do not have the same undesirable characteristics as replicated tables but bring some other problems, such as increased cost, lock contention and high messaging overhead and they operate at the granularity of a whole database and not on table or record level.
Therefore, instead of replicating data in cluster database management systems the present invention defines and uses virtual replicated table architecture which retains the benefits of traditional replicated tables but eliminates the negative side-effects.